Chelsea's lead at the top of the Premier League was cut to seven points after they suffered a shock home defeat by Crystal Palace and Tottenham beat Burnley.